热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

下图|工时_模板学堂丨禅道业务数据分析大屏

篇首语:本文由编程笔记#小编为大家整理,主要介绍了模板学堂丨禅道业务数据分析大屏相关的知识,希望对你有一定的参考价值。DataEase开源数据可视化分析平台模板市场&#x

篇首语:本文由编程笔记#小编为大家整理,主要介绍了模板学堂丨禅道业务数据分析大屏相关的知识,希望对你有一定的参考价值。


DataEase开源数据可视化分析平台模板市场(https://dataease.io/templates/)于2022年6月正式发布。模板市场旨在为DataEase用户提供专业、美观、拿来即用的仪表板模板,方便用户根据自身的业务需求和使用场景选择对应的仪表板模板,并在优质模板的基础上轻松制作自己的仪表板。

9月上新模板

DataEase模板市场定期进行模板上新,9月共上新16个模板,涉及医药、电力、媒体运营、警务、零售、销售管理等主题,应用软件大屏模板新增Jira业务数据仪表板,欢迎大家在DataEase模板市场下载使用。
















9月精选模板

本月为大家推荐的精选模板是禅道业务数据分析大屏。禅道是第一款国产的开源项目管理软件,它的核心管理思想基于敏捷方法Scrum,内置了产品管理和项目管理功能,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能。用户使用禅道软件可以将软件研发过程中的需求、任务、Bug、用例、计划、发布等要素有序地跟踪管理起来,完整地覆盖了项目管理的核心流程。


  1. 大屏信息

■ 禅道基于v12.5.3版本,DataEase开源数据可视化分析平台基于v1.14版本。

■ 此次共统计15项指标,各指标项具情况体如下:


  1. 大屏展示

模板应用

接下来,为大家详细讲解如何应用禅道业务数据分析大屏。


  1. 使用模板创建仪表板

1.1 内置模板市场

如果您所使用DataEase为v1.13.0及以上的版本,并且DataEase可直接访问到模板市场地址(
https://dataease.io/templates/),可通过内嵌的“模块市场”在线应用模板。

为仪表板命名并选择放置的目录。

添加成功后即会自动进入到该新建仪表板的编辑界面。

1.2 在线模板市场

您也可以访问DataEase模板市场主页,找到禅道业务数据分析大屏。模板市场地址为:
https://dataease.io/templates/。如需快速检索,可进行关键字搜索或分类切换,可以快速找到想要的大屏模板。

点击“禅道业务数据分析大屏”仪表板模板进入详情界面。点击“下载”按钮后可将模板下载至本地。

进入自己的DataEase系统的“仪表板”模块中,通过下图所示以“导入模板”的方式新建仪表板,点击“上传模板”按钮,选择使用“模板市场”下载的禅道业务数据分析大屏的模板文件。

导入成功后即可看到下图所示的大屏。


  1. 准备数据

当前数据为模板示例数据,需要进一步将数据来源替换为自己环境的禅道数据库,从而展示真实的实时数据。

2.1 新建数据源

首先新建数据源,配置禅道数据库的真实信息,搭建DataEase与禅道服务器之间的数据连接。

2.2 添加相关的数据集

分别创建我们本次演示中需要用到的各类数据集。如果需要展示一些非模板所展示的内容,也可以根据自己需要创建对应的数据集。

此次我们涉及到的有只有SQL数据集,在创建时需要选择对应的类型。

本次用到以下SQL语句,分别以SQL数据集类型创建好即可。

■ 用户数

select count(*) as 用户 from zt_user

■ 操作总数

select count(*) from zt_action

■ 消耗工时

select sum(consumed) from zt_task

■ 产品数

select count(*) from zt_product

■ 项目数

select count(*) from zt_project

■ 任务数

select count(*) from zt_task

■ 需求数

select count(*) from zt_story

■ Bug数

select count(*) from zt_bug

■ 用例数

select count(*) from zt_case

■ 近30天的Bug状态分布

SELECT CASE STATUS
WHEN 'active' THEN '已激活'
WHEN 'resolved' THEN '已解决'
WHEN 'closed' THEN '已关闭'
ELSE '其他'
END AS "类别", count(*) AS "数量"
FROM zt_bug
WHERE datediff(NOW(), openedDate) <&#61; 30
GROUP BY STATUS

■ 近14天的Bug状态

SELECT DISTINCT DATE_FORMAT(openedDate, &#39;%Y-%m-%d&#39;) AS "时间"
, (
SELECT count(*)
FROM zt_bug z1
WHERE status &#61; &#39;active&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "已激活"
, (
SELECT count(*)
FROM zt_bug z1
WHERE status &#61; &#39;resolved&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "已解决"
, (
SELECT count(*)
FROM zt_bug z1
WHERE status &#61; &#39;closed&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "已关闭"
FROM zt_bug z2
WHERE datediff(NOW(), z2.openedDate) <&#61; 14
ORDER BY z2.openedDate DESC

■ 产品数据

SELECT DISTINCT zp.NAME AS "产品名称"
, (
SELECT count(*)
FROM zt_productplan zpp
WHERE zp.id &#61; zpp.product
) AS "计划数"
, (
SELECT count(*)
FROM zt_story zs
WHERE zp.id &#61; zs.product
) AS "创建需求数"
, (
SELECT count(*)
FROM zt_story zs
WHERE zp.id &#61; zs.product
AND zs.&#96;status&#96; &#61; &#39;closed&#39;
) AS "完成需求数"
FROM zt_product zp

■ 项目数据

SELECT DISTINCT zp.NAME AS "项目名称"
, (
SELECT count(*)
FROM zt_story zs
LEFT JOIN zt_projectstory zpjs ON zpjs.story &#61; zs.id
WHERE zs.STATUS &#61; &#39;closed&#39;
AND zpjs.project &#61; zp.id
) AS "完成需求数"
, (
SELECT count(*)
FROM zt_task zt
WHERE zt.project &#61; zp.id
AND zt.&#96;status&#96; &#61; &#39;done&#39;
) AS "完成任务数"
, (
SELECT count(*)
FROM zt_bug zb
WHERE zb.project &#61; zp.id
AND zb.&#96;status&#96; &#61; &#39;resolved&#39;
) AS "解决Bug数"
FROM zt_project zp

■ 近30天的需求状态分布

SELECT CASE stage
WHEN &#39;wait&#39; THEN &#39;等待中&#39;
WHEN &#39;planned&#39; THEN &#39;已计划&#39;
WHEN &#39;projected&#39; THEN &#39;已立项&#39;
WHEN &#39;developing&#39; THEN &#39;开发中&#39;
WHEN &#39;testing&#39; THEN &#39;测试中&#39;
WHEN &#39;verified&#39; THEN &#39;已验收&#39;
WHEN &#39;closed&#39; THEN &#39;已关闭&#39;
ELSE &#39;其他&#39;
END AS "类别", count(*) AS "数量"
FROM zt_story
WHERE datediff(NOW(), openedDate) <&#61; 30
GROUP BY stage

■ 近14天的需求状态

SELECT DISTINCT DATE_FORMAT(openedDate, &#39;%Y-%m-%d&#39;) AS "时间"
, (
SELECT count(*)
FROM zt_story z1
WHERE stage &#61; &#39;planned&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "已计划"
, (
SELECT count(*)
FROM zt_story z1
WHERE stage &#61; &#39;wait&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "等待中"
, (
SELECT count(*)
FROM zt_story z1
WHERE stage &#61; &#39;developing&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "研发中"
, (
SELECT count(*)
FROM zt_story z1
WHERE stage &#61; &#39;testing&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "测试中"
, (
SELECT count(*)
FROM zt_story z1
WHERE stage &#61; &#39;verified&#39;
AND DATE_FORMAT(z1.openedDate, &#39;%Y-%m-%d&#39;) &#61; DATE_FORMAT(z2.openedDate, &#39;%Y-%m-%d&#39;)
) AS "已验收"
FROM zt_story z2
WHERE datediff(NOW(), z2.openedDate) <&#61; 14
ORDER BY z2.openedDate DESC

  1. 替换数据

重新进入已导入的仪表板中&#xff0c;进入编辑界面&#xff0c;分别对各个视图的数据集进行替换&#xff0c;即会展示各个视图所用到的数据集及其维度与指标字段。正常情况下&#xff0c;数据集字段一致&#xff0c;替换为自己的数据集后视图会自动匹配字段进来&#xff0c;无需再进行维度与指标字段的配置。

■ 注意事项&#xff1a;维度/指标字段提示错误

由于在模板设计阶段字段的命名可能与原数据集不同&#xff0c;维度或者指标会出现红色感叹号的情况。大家可以将红框指标删除&#xff0c;把左边的“时间”、“已激活”、“已解决”、“已关闭”字段重新直接拖入所示位置即可。


  1. 最终效果

完成上述步骤后&#xff0c;属于自己的禅道业务数据分析大屏就完成了。如果您有个性化的需求&#xff0c;样式和展示内容还可以根据需要进行相应调整。


推荐阅读
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 本文将详细介绍如何在没有显示器的情况下,使用Raspberry Pi Imager为树莓派4B安装操作系统,并进行基本配置,包括设置SSH、WiFi连接以及更新软件源。 ... [详细]
  • 在使用Node.js运行时环境的Next.js应用程序部署过程中,遇到了与目录文件数量相关的错误。本文将详细探讨该问题及其解决方案。 ... [详细]
  • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
  • 本文深入探讨了SQL数据库中常见的面试问题,包括如何获取自增字段的当前值、防止SQL注入的方法、游标的作用与使用、索引的形式及其优缺点,以及事务和存储过程的概念。通过详细的解答和示例,帮助读者更好地理解和应对这些技术问题。 ... [详细]
  • 小编给大家分享一下如何移除URL中的index.php,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 精致小屏灰色风格苹果CMS v10模板,支持DIY主题管理系统
    探索一款专为影视站设计的苹果CMS v10模板,具备强大的主题管理系统和500多个设置项,无需二次开发即可轻松配置。下载地址:https://www.mytheme.cn/maccms/244.html,演示地址:http://demo.mytheme.cn/index.php?id=244。 ... [详细]
  • 使用PHP实现网站访客计数器的完整指南
    本文详细介绍了如何利用PHP构建一个简易的网站访客统计系统。通过具体的代码示例和详细的解释,帮助开发者理解和实现这一功能,适用于初学者和有一定经验的开发人员。 ... [详细]
  • PostgreSQL 最新动态 —— 2022年4月6日
    了解 PostgreSQL 社区的最新进展和技术分享 ... [详细]
  • Python自动化测试入门:Selenium环境搭建
    本文详细介绍如何在Python环境中安装和配置Selenium,包括开发工具PyCharm的安装、Python环境的设置以及Selenium包的安装方法。此外,还提供了编写和运行第一个自动化测试脚本的步骤。 ... [详细]
  • 虽然SQL因其直观易学的语法受到广泛欢迎,但转向Pandas进行数据处理时,初学者可能会感到不适应。本文旨在通过一系列实例,展示如何在Pandas中实现类似SQL的数据查询功能。 ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • R语言基础入门指南
    本文介绍R语言的基本概念,包括其作为区分大小写的解释型语言的特点、主要的数据结构类型如向量、矩阵、数据框及列表等,并探讨了R语言中对象的灵活性与函数的应用。此外,文章还提供了关于如何使用R进行基本操作的示例,以及解决常见编程问题的方法。 ... [详细]
  • Python库在GIS与三维可视化中的应用
    Python库极大地扩展了GIS的能力,使其能够执行复杂的数据科学任务。本文探讨了几个关键的Python库,这些库不仅增强了GIS的核心功能,还推动了地理信息系统向更高层次的应用发展。 ... [详细]
author-avatar
空间无悔
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有